##
# linux sample app  build script
##

Import('env linux_sample_env')

# Add third party libraries
SConscript(
    '#service/third_party_libs.scons', exports={'lib_env': linux_sample_env})

######################################################################
# Build flags
######################################################################
linux_sample_env.AppendUnique(CPPPATH=['include'])
linux_sample_env.AppendUnique(CXXFLAGS=['-std=c++0x', '-Wall', '-pthread'])
linux_sample_env.AppendUnique(CPPDEFINES=['LINUX'])
linux_sample_env.AppendUnique(LIBS=[
    'coap',
    'connectivity_abstraction',
    'oc_logger',
    'octbstack',
    'oc',
    'pthread',
])

if env.get('SECURED') == '1':
    linux_sample_env.AppendUnique(LIBS=['mbedtls', 'mbedx509', 'mbedcrypto'])

# On some platforms link order can miss functions so librt needs to be
# re-scanned at the end if present. gcc 4.6 is one with this issue.
if 'rt' in linux_sample_env.get('LIBS'):
    linux_sample_env.Append(LIBS=['rt'])

######################################################################
#build sampleapp
######################################################################
weightsensorapp = linux_sample_env.Program('WeightSensorApp',
                                           'src/WeightSensorApp.cpp')
Alias("weightsensorapp_sample", weightsensorapp)
env.AppendTarget('weightsensorapp')
linux_sample_env.UserInstallTargetExtra(weightsensorapp)
